使用 RVO 您所在的位置:网站首页 rvo算法 Python 使用 RVO

使用 RVO

2024-07-16 11:11| 来源: 网络整理| 查看: 265

使用 RVO-3D + ROS 实现三维避障 RVO官网代码运行RVO-3D运行 RVO_ROS 运行把二维库换成三维库记录发生的问题插件目录调试所学

RVO官网代码运行

RVO官网有RVOc++、c#的包,也有实例,按照说明文档运行 https://gamma.cs.unc.edu/RVO2/

RVO-3D运行

打开下载的目录: 目前测试运行正常的是这个包 在这里插入图片描述

解压并在根目录创建build文件夹 ,在build文件夹中cmake src 生产make文件后make; 在这里插入图片描述 在这里插入图片描述

修改example中cmake文件的链接地址,把rvo库链接到cpp文件中; 在这里插入图片描述

同上在example中创建builde文件夹,在build文件夹中cmke … 生成make文件后 make; 在这里插入图片描述

执行RVO可执行文件,生成时间戳和速度值,RVO的名字是上边CMakeLists文件中自己修改的名称 ; 输出 RVO 3D 算法示例,可以修改目标点和智能体个数来调试查看使用方法。

RVO_ROS 运行

在github中找到了rvo_ros 包,在二维空间的避障的仿真:

https://github.com/hanruihua/rvo_ros 效果 在这里插入图片描述

把二维库换成三维库

|在这里插入图片描述

把三维库放到工作目录中,修改CMakeList文件,将RVO库的目录修改 在这里插入图片描述 修改 nav_rvo.cpp、rvo_node.cpp、set_goals_client.cpp、world_multi_obs.cc文件中的三维部分 在这里插入图片描述

记录发生的问题 插件目录

期间有一个问题突然就只能在二维方向上移动而不能在三维方向上移动了,原因是gazebo插件的路径在环境中写了两次,有一次是之前跑的二维的代码,所以系统找插件的时候默认先找到了二维的插件,所以无论三维这块怎么修改,都没有用到三维的插件。

调试

修改找问题的过程中也让我学会了怎么去看输出,怎么看话题,通过对比输出和订阅话题最终把问题锁定在了插件的问题上。

所学

ros通信gazebo仿真都是通过使用cpp文件写插件,写订阅话题发布话题,重定义实现的。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有